#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from .base_checkpointer import BaseCheckpointerPlugin


class NoopCheckpointerPlugin(BaseCheckpointerPlugin):
    """无操作保存点插件 - 不进行任何检查"""
    
    def __init__(self, config):
        """
        初始化无操作保存点插件
        
        Args:
            config (dict): 配置参数字典
        """
        super().__init__(config)
        
    def should_save_checkpoint(self, current_loss, avg_loss, epoch, step):
        """
        判断是否应该保存检查点
        
        Args:
            current_loss (float): 当前损失值
            avg_loss (float): 平均损失值
            epoch (int): 当前epoch
            step (int): 当前step
            
        Returns:
            bool: 是否应该保存检查点
        """
        # 无操作实现始终返回False，表示从不保存检查点
        return False
        
    def should_early_stop(self):
        """
        判断是否应该早停
        
        Returns:
            bool: 是否应该早停
        """
        # 无操作实现始终返回False，表示不早停
        return False